/**
 * Copyright (c) 2018 人人开源 All rights reserved.
 *
 * https://www.renren.io
 *
 * 版权所有，侵权必究！
 */

package com.dkha.server.system.modules.sys.service;

import com.dkha.server.system.common.service.BaseService;
import com.dkha.server.system.modules.sys.dto.SysRegionDTO;
import com.dkha.server.system.modules.sys.dto.region.RegionProvince;
import com.dkha.server.system.modules.sys.entity.SysRegionEntity;

import java.util.List;
import java.util.Map;

/**
 * 行政区域
 *
 * @author Mark sunlightcs@gmail.com
 */
public interface SysRegionService extends BaseService<SysRegionEntity> {

	List<SysRegionDTO> list(Map<String, Object> params);

	/**
	 * 获取树形结构地区码表
	 * @return
	 */
	List<SysRegionDTO> allList();
	List<Map<String, Object>> getTreeList();

	SysRegionDTO get(Long id);

	void save(SysRegionDTO dto);

	void update(SysRegionDTO dto);

	void delete(Long id);

	int getCountByPid(Long pid);

	List<RegionProvince> getRegion(boolean threeLevel);

	/**
	 * 根据地区登记查询码值
	 * @param level
	 * @return
	 */
	 List<SysRegionEntity> getRegionByLevel(Integer level);


}